Dienste sicher konfigurieren unter Windows 2000/XP - ntsvcfg.de
===============================================================

v1.0
Die Urform mit dem Ziel, den Abschnitt "Einstellungen der
Startart der Dienste" von www.kssysteme.de automatisch ausfhren
zu lassen. Der Gedanke dazu ergibt sich schnell, wenn man mehrere
Rechner konfigurieren mu. Ohne den Parameter "/all" bleiben Grund-
funktionen wie SMB, NetBIOS o.. fr das LAN in gewissem Umfang
erhalten.


v1.01, v1.02
Kleinere Bugfixes und Anpassungen


v1.03
- Der Parameter "/restore" wurde hinzugefgt. Somit werden vor jeder
  Vernderung Sicherheitskopien der entsprechenden Registry-Schlssel
  angelegt, um bei Problemen die vorgenommenen nderungen zurcknehmen
  zu knnen. Diese Funktion wurde getestet und arbeitet fehlerfrei.
- Mitttels "/lan" knnen geziehlt Einstellungen und Dienste aktiviert
  werden, die fr einen Betrieb im LAN notwendig sind.


v1.04
Kleinere Bugfixes und Anpassungen


v1.05_beta
Zustzlich wurden in dieser Version weitere Manahmen nach
www.kssysteme.de aufgenommen, um diese ebenfalls automatisiert 
durchfhren zu knnen:
->DCom:
standardmig wird auch DCOM deaktiviert und die Standardprotokolle
werden entfernt
->NEtBios:
Der NetBios-Dienst (NetBT) wird beendet und deaktiviert.


v1.06_beta
In nderung zur v1.05 wird der NetBios-Dienst nicht mehr
deaktiviert/beendet, sondern anstelle dessen SMB abgeschaltet. 
Dadurch bleibt die NetBIOS-Funktionalitt erhalten, kann jetzt aber 
weiterhin fr jeden Netzwerk-Adapter (Netzwerkkarte)getrennt festge-
legt werden. Lt. kssysteme wird dringlich empfohlen, NetBIOS bei der
Internet-Verbindung zu deaktivieren. Innerhalb des LAN (intern) kann
NetBios aber weiterhin aktiv bleiben (z.B. fr Freigaben,
Netzwerk-Drucker).
->DHCP:
es wird geprft, ob DHCP verwendet wird. Dies ist z.B. bei einigen
Konfigurationen, die ber DSL mit dem Internet verbunden sind und
keine statische IP zugewiesen bekommen, notwendig. Wird DHCP verwen-
det, erfolgt keine nderung des Dienstes. Ist DHCP nicht aktiv, wird
als Starttyp "manuell" festgelegt.


v1.07_beta
Es gibt fr Win2000 und Windows XP nur noch ein Script fr beide 
Betriebssysteme. Es wird selbststndig erkannt, welches gerade 
verwendet wird. Auerdem wird nun kurz geprft, ob die Datei SC.EXE
aufgerufen werden kann.


v1.1 Final Release
Die Version 1.07 wurde noch einmal unter Windows 2000 und XP
getestet und es wurden keine Fehler registriert. Daher wurde sie 
jetzt offiziell zum Download freigegeben und besitzt nun keinen Beta
Status mehr. Trotzdem ist nicht ausgeschlossen, da noch Fehler im
Quellcode stecken, welche aber dankend durch den Autor zur Kenntnis
genommen werden.


v1.1_build0
Ergnzend zur den nderungen in Version 1.1 wurde der Speicherpfad
fr .REG-Sicherungsdateien von C:\ auf %WINDIR% umgeleitet. Ob hierfr
(Schreib-)rechte vorhanden sind, wird vorher berprft.


v1.1_build1
Der Speicherpfad wurde erneut gendert und zeigt nun auf das Home-
Verzeichnis des jeweiligen Benutzers (%USERPROFILE%). Desweiteren
sind Meldungen jetzt auf Englisch, wichtige Dialoge und
Fehlermeldungen erscheinen in Deutsch und Englisch. Auch wurden 
systemspezifische Aufrufe an US-versionen angepat (im Moment wird
nur die US-Version von Windows2000 zustzlich untersttzt!). Die 
Erkennung der notwendigen Rechte zum Ausfhren dieses Skriptes ist
verbessert und korrigiert worden.


v1.1_build2
Kleiner Bugfix beim Erzeugen der Registrierungsdateien.


v1.1_build3
Der "Nachrichtendienst" wurde gendert. Bisher wurde er nur bei Aufruf
mit dem Parameter /all berhaupt gendert und auf "Manuell" gesetzt.
Jetzt wird er immer deaktivert und falls er luft, beendet.


v1.1_build3
Kleiner Bugfix bei Bildschirmausgabe "This script works only on 
Windows 2000/XP machines!"


v1.1_build4/5
Fehler behoben: Optionen sind nun nicht mehr "case-sensitiv",
Textausgabefehler behoben


v1.1_build6
Messenger: doppelter Aufruf/Deaktivierung korrigiert
Skript trgt nun die Endung .CMD, was fr NT-Systeme blicher ist


v2.0_beta0 (21.12.2003)
Mit viel Hilfe von Ansgar Wiechers wurde der komplette Programmcode 
optimiert. Einige Routinen wurden verbessert und das Skript ist nun
fr andere besser nachvollziehbar und anpassbar, da strukturierter.


v2.0_beta1 (23.12.2003)
Es wurden einige Tests unter Windowx XP duchgefhrt. Dabei wurden
einzelne Fehler in Dialogen gefunden und behoben. Die Funktionalitt
blieb davon unbeeintrchtigt.


v2.0_build0 (27.12.2003)
Nach erweiterten Testdurchlufen ist die Version 2.0 des Skriptes
freigegeben. Es wurden einige kleinere Bugs gefixt, Dialoge ange-
pat und ein einfaches Auswahlmen hinzugefgt.


v2.0_build1 (27.12.2003)
Nach Problemen mit dem Benutzernamen (Name mit Leerzeichen) in 
Verbindung mit der Rechte-berprfung wurde dieses nun behoben.


v2.0_build2 (28.12.2003)
Erstmalig wurde eine Installationsroutine fr die Datei SC.EXE
implementiert, falls diese noch nicht existiert. Diese Funktion 
befindet sich noch im Beta-Stadium!


v2.0_build3 (8.1.2004)
Der Header bei generierten REG-Dateien wurde auf "REGEDIT4" an-
gepasst, um mgliche Kompatibilittsprobleme beim Import 
hinsichtlich Unicode zu vermeiden.


v2.0_build4 (19.1.2004)
Das Problem "Die berprfung der erforderlichen Rechte schlgt
fehl, wenn ein Domnenbenutzer angemeldet ist" wurde behoben.


v2.0_build5 (9.2.2004)
Kleinere Bugfixes. Das Script wird ab sofort unter der 
GNU General Public License angeboten.


v2.0_build6 (3.3.2004)
Unter Windows XP gibt es mglicherweise Probleme nach Ausfhrung
des Skriptes, wenn WLAN-Netzwerkverbindungen exisitieren. Die 
Behandlung des Dienstes "WZCSVC" wurde aufgehoben.


v2.0_build7 (9.4.2004)
Es wurden nderungen bei den Diensten "Automatische Updates" 
sowie "Taskplaner" vorgenommen. Bisher wurden beide Dienste 
angehalten und deaktivert. Ab sofort sind sie von der Behandlung 
durch das Script ausgenommen. 
Um trotzdem eine Bindung an das externe Interface zu vermeiden, 
wird der Schlssel

	[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Rpc\ClientProtocols]

gelscht und folgender ergnzt:

	[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Rpc\Internet]
	"PortsInternetAvailable"="N"
	"UseInternetPorts"="N"

Desweiteren wurden folgende Keys erweitert

	[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole]
	"EnableDCOM"="N"
append:	"EnableDCOMHTTP"="N"
append:	"EnableRemoteConnect"="N"

sowie entfernt:

	[-HKEY_CLASSES_ROOT\AIM]
	[-HKEY_CLASSES_ROOT\gopher]
	[-HKEY_CLASSES_ROOT\telnet]



v2.0_build8 *Preview, not published* (16.4.2004)
Die Behandlung der Dienste "Automatische Updates" sowie "Taskplaner"
werden vorraussichtlich folgendermaen gendert:

(1) Standard: Dienste bleiben unberhrt
(2) /all    : Dienste werden beendet und deaktiviert (hardening)

Es wurden Programmfehler behoben, die mglicherweise Probleme 
verursachen knnten (Pfadangaben sowie Benutzer-Login mit Leerzeichen).


v2.1_build0 (25.4.2004)
Die Benutzeroberflche wurde verndert, um nun 3 Szenarien 
(LAN, Standard, ALL) anbieten zu knnen; der Quellcode und die Dienste-
behandlung wurde dementsprechend angepasst.
NetBios wird ab dieser Version global an allen NIC-Interfaces deaktiviert,
sofern WSH (Windows Scripting Host) korrekt installiert ist.


v2.1_build1 (15.5.2004)
Das Problem mit dem Taskplaner unter WindowsXP (Taskplaner konnte nicht 
gestartet werden - "Systemfehler 87. Falscher Parameter"). wurde in der
aktuellen Version behoben.

WindowsXP: Die Schlssel

	[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Rpc\Internet]
	"PortsInternetAvailable"="N"
	"UseInternetPorts"="N"

werden unter WinXP nur noch bei Auswahl des Parameters "/ALL" angelegt.
Bitte beachten Sie, dass hierdurch moeglicherweise nicht alle Ports 
geschlossen werden knnen. berprfen Sie daher mittels eines Portscanners
(z.B. http://webscan.security-check.ch/ ) ihren Rechner auf noch offene 
Ports. Die fehlerhafte Restore-Funktion wurde korrigiert.


v2.1_build2 (18.05.2004)
Unter Windows XP erfolgt bei Auswahl von
          (1) LAN oder
          (2) Standard
eine Abfrage, ob der Taskplaner verwendet wird. Bei Nichtverwendung wird 
der Taskplaner deaktiviert und beendet.

v2.1_build3 (28.06.2004)

(1) Fingerprinting
    Es wird nach Konfiguration der Dienste ein Musterabbild der aktuellen 
    Dienste-Konfiguration erstellt. Falls durch den Benutzer oder Updates
    bzw. Patches eine nderung an den Diensten vorgenommen wurde, wird dies
    erkannt und beim Starten des Scriptes gemeldet:
    
    "Checking for modified services..."

    a.) "WARNING-services maybe modified!" bedeutet, das Vernderungen 
        vorgenommen wurden, welche nicht durch das script erfolgten.

    b.) "OK" bedeutet, das keine Vernderungen der Dienste auerhalb
        des Scriptes vorgenommen wurden.

(2) Betrifft nur "/all":
    Der Dienst RemoteRegistry wurde von Startart "manuell" auf "deaktivert" 
    gendert.

(3) Desweiteren werden vorhandene Sicherungsdateien eingespielt, bevor 
    nderungen an den Diensten vorgenommen werden, um Probleme und 
    Seiteneffekte bei mehrmaliger Ausfhrung des Scriptes zu vermeiden.


v2.1_build3a (29.06.2004)

Die Funktion "Fingerprinting" wurde bis auf weiteres deaktiviert, da eine 
zuverlssige Erkennung der nderung von Diensten noch nicht 
gewhrleistet werden kann.



v2.1_build4 (02.08.2004)

(1) Probleme mit der Funktion "Fingerprinting" wurden behoben. Trotzdem ist 
    diese Option noch in der Entwicklung. An dieser Stelle Danke an Joerg Ott 
    und Johannes Lichtenberger. Mehr Informationen unter www.ntsvcfg.de/fprint.

(2) Die DHCP-Erkennung wurde korrigiert

(3) Ein doppelter Eintrag wurde entfernt (double-stop during removing messenger)



v2.2_build0 (14.08.2004)

(1) Die Funktion "fingerprinting" wird nur noch bei Start des Scriptes oder nach 
    Neuerstellung eines "fingerprints" aufgerufen. Auerdem kann diese Funktion 
    bei Problemen mittels des Eintrages

                               set USE_FPRINT=NO
    deaktiviert werden.

(2) Wenn Windows XP SP2 installiert wurde, wird die XP-Firewall (ICF) nur bei
    Verwendung der Option (2) Standard nicht verndert (in allen anderen Fllen 
    wird die ICF deaktiviert)

(3) Das in Windows XP SP2 enthaltene Sicherheitscenter wird bei Verwednung von 
    Option "(3) /ALL" deaktiviert.

(4) Erkennung von ServicePack-Level hinzugefgt

(5) der Taskplaner wird unter Windows XP SP2 nur noch bei Verwendung der
    Option "(3) /All" deaktiviert.


v2.2_build1 (20.08.2004)

- Bugfixes
- Sicherheitscenter wird deaktiviert
- VBS Skript verndert (cscript.exe wurde ergnzt)
- Bei Aufruf ber Kommandozeile wurden erforderliche Rechte nicht berprft


v2.2_build2 (02.10.2004)

Die Funktion "Fingerprinting" wurde korrigiert und ist nun u.a. auch auf 
Rechnern mit ATI-Grafikkarten lauffhig. Dienste mit Leerzeichen im Namen 
werden von nun an untersttzt.


v2.2_build3 (28.01.2005)

Es wird berprft, ob das Skript auf NT Server Versionen ausgefhrt 
wird (NT-Server Versionen werden NICHT untersttzt!).


v2.2_build3a (29.01.2005)

Die Erkennung von Serverversionen arbeitete nicht zuverlssig und 
wurde korrigiert.


v2.2_build3b-c (13.02.2005, unreleased)

Der Pfad zu Regedit wird vorgegeben


v2.2_build3d (16.02.2005, unreleased)

Ein kritisches Problem in build3c in Zusammenhang mit der Behandlung
von Regedit wurde behoben.



v2.2_build4 (30.03.2005)

(1) Es wird geprft, ob %SystemRoot%\System32\find.exe 
    sowie %SystemRoot%\regedit.exe exisitieren.

(2) Desweiteren wurde die Backup-Routine (Save/Restore) erweitert. Es
    ist nun mglich, zwischen folgenden Profilen zu whlen:

                      Restore Regfiles       Saving Regfiles               

     RESTORE_MODE=1       JA                      JA
     RESTORE_MODE=2       JA                      NEIN
     RESTORE_MODE=3       NEIN                    JA
     RESTORE_MODE=4       NEIN                    NEIN

    (Sind keine Sicherungsdateien vorhanden, wird in jedem Fall 
     erstmals ein Backup erstellt.)

    Default: MODE=2 - Es werden bei jeder weiteren Ausfhrung immer 
    nur die (erstmalig) erstellten Sicherungsdateien zurckgesichert,
    jedoch keine Neuen erstellt. Somit kann auch nach mehrmaligem 
    Ausfhren des Scripts bei Bedarf der Zustand wie vor erstmaliger 
    Anwendung (Ausnahme: NETBios-Einstellung) hergestellt werden.

(3) Unabhngig von dem in (2) gewhlten Modus werden bei Erstanwendung
    des Scripts einmalig Sicherungsdateien mit der Extension ".default"
    erstellt. Diese sollen das Zurcksetzen der Konfiguration in den 
    ursprnglichen Zustand mittels Aufruf durch den Parameter "/DEFAULT"
    erleichtern, falls es nach Anwendung des Skripts Probleme geben
    sollte.

(4) ber (M)ore Options kann die aktuelle Dienstekonfiguration
    (Starttyp, Startart) gesichert werden, um diese, insbesondere bei
    manueller Konfiguration nach Anleitung von Frank Kaune, zu einem 
    spteren Zeitpunkt rcksichern zu knnnen.

(5) Die FTP-Adresse fr den automatischen Bezug der Datei SC.EXE war
    ungltig und wurde korrigiert.

(6) Einige Informationen werden nun bersichtlicher dargestellt.




v2.2_build5 (07.06.2005)

(1) Der Ort der Sicherungsdateien wurde von %USERPROFILE% nach
    %USERPROFILE%\ntsvcfg\ gendert. Sicherungsdateien, welche sich
    im alten Verzeichnis befinden, werden importiert.

(2) Es wird bei Ausfhrung unter Windows XP ein Systemwieder-
    herstellungspunkt erstellt. Bei Problemen kann diese Funktion
    mittels dem Eintrag 

    REM *****Options*****
    set UseXPSysRestore=NO

    deaktiviert werden.



v2.2_build5a (10.06.2005)

Die URL zum Download von PKUNZIP.EXE wurde angepat



v2.2_build5b (10.06.2005)

Die Exit-Sequence wurde angepat: bei Aufruf des Scripts ber
Parameter ist bei Programmende keine Nutzerinteraktion mehr 
erforderlich ("press key to continue"). Somit kann das Script auch
von anderen Batchprozessen aufgerufen.



v2.2_build5c (11.06.2005)

Eine Sicherungsdatei konnte nicht korrekt in das neue 
Sicherungsverzeichnis (USERPROFILE\ntsvcfg) bernommen werden. Das
Problem wurde mit v22_build_5c behoben.



v2.2_build6 (07.07.2005)

Windowx XP64-Untersttzung (basic) wurde hinzugefgt. 
Achtung: die Dienstekonfiguration entspricht der von Windows XP und 
wurde noch nicht explizit unter XP64 evaluiert!


v2.2_build6a (12.08.2005)

Ein Fehler im Script fhrte dazu, das auf XP32-Systemen eine 
"!EXPERIMENTAL! Windows XP64" Warnmeldung ausgegeben wurde. 
Dieses Problem wurde mit diesem Build behoben. Es gab keine
Beeintrchtigungen in der Funktion.


v2.2_build7 (29.11.2005)

Einige kleinere Fehler wurden korrigiert. Desweiteren wird ein 
deutlicherer Hinweis auf Internetverbindungsprobleme gegeben, 
falls DHCP (irrtmlich) deaktivert wurde.

v2.2_build7a (07.12.2005)

Ein Fehler bei Verwendung der Option "/DEFAULT" wurde behoben: 
notwendige Variablen waren nicht deklariert. 

v2.2_build7b (18.12.2005)

Ein Fehler bei Verwendung der Option "(4) Restore" und 
"/Default" wurde behoben. Der Eintrag "SMBDeviceEnabled" wird
nun ggfls. korrekt entfernt. 

============================
##EOF##